Communication system and method for controlling data distribution quality of service in time sensitive networks

ABSTRACT

A control system (e.g., that controls operations of a powered system) includes one or more processors configured to determine quality of service (QoS) parameters of devices communicating data with each other in an Ethernet network configured as a time sensitive network (TSN). The one or more processors also are configured to determine available communication pathways in the TSN through which the devices are able to communicate the data, and to select one or more of the available communication pathways and to designate communication times at which the data is communicated between the devices in order to satisfy the QoS parameters of the devices.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application No.62/311,124, filed 21 Mar. 2016, the entire disclosure of which isincorporated herein in its entirety.

FIELD

Embodiments of the present disclosure generally relate to systems andmethods for communicating data in networks.

BACKGROUND

Various types of control systems communicate data between differentsensors, devices, user interfaces, etc., in order to enable controloperations of other powered systems. For example, locomotives,automobiles, surgical suites, power plants, etc., include many systemsthat communicate with each other in order to control operations of thelocomotives, automobiles, surgical suites, and power plants.

The operations of these powered systems may rely on on-time and accuratedelivery of data frames among various devices. Failure to deliver somedata at or within designated times may result in failure of the poweredsystem, which can have disastrous consequences. For example, the failureto deliver sensor data to a control system of a locomotive or railvehicle system can result in the locomotive or rail vehicle system notapplying brakes early enough to avoid a collision. Other control systemsmay fail to implement protective measures to avoid damage or injury tothe systems or other equipment if data is not supplied at or within thedesignated times. Without timely information, feedback control systemscannot maintain performance and stability.

In order to avoid some of these problems, some known control systems usededicated wired communication paths between devices. These controlsystems may include one or more dedicated wires that extend from onedevice to another and are not used by any other devices to communicatedata. These dedicated wires may only communicate the data betweendevices to ensure that other data traffic within the control system doesnot delay or interfere with the data communicated between the devices.Other control systems can include a communication network that isdedicated to communication of data between devices. For example, insteadof the control system or powered system having a larger network thatinterconnects many or all devices of the system, the control system orpowered system may have a smaller network dedicated to communicatingdata only among certain devices (e.g., devices related to safe operationof the systems), while other devices of the same system communicateusing another, separate network. An example is constructing separatenetworks for video camera traffic and engine control system traffic in atrain locomotive. Constructing and maintaining separate communicationnetworks is redundant and expensive.

Both of these solutions add increased cost and complexity to the controlsystem or powered system. Dedicating wires or networks to communicationof data between certain devices may require duplication of communicationand network hardware, which can significantly add to the cost and timein establishing, maintaining, and repairing the networks.

BRIEF DESCRIPTION

In one embodiment, a control system (e.g., that controls operations of apowered system) includes one or more processors configured to determinequality of service (QoS) parameters of devices communicating data witheach other in an Ethernet network configured as a time sensitive network(TSN). The one or more processors also are configured to determineavailable communication pathways in the TSN through which the devicesare able to communicate the data, and to select one or more of theavailable communication pathways and to designate communication times atwhich the data is communicated between the devices in order to satisfythe QoS parameters of the devices.

In one embodiment, a method includes determining quality of service(QoS) parameters of devices communicating data with each other in anEthernet network configured as a time sensitive network (TSN),determining available communication pathways in the TSN through whichthe devices are able to communicate the data, and selecting one or moreof the available communication pathways and to designate communicationtimes at which the data is communicated between the devices in order tosatisfy the QoS parameters of the devices.

In one embodiment, a control system includes one or more processorsconfigured to determine quality of service (QoS) parameters of devicescommunicating data with each other in a communication network. The oneor more processors also are configured to determine availablecommunication pathways in the network through which the devices are ableto communicate the data, and to select one or more of the availablecommunication pathways and to designate communication times at which thedata is communicated between the devices in order to satisfy the QoSparameters of the devices.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter described herein will be better understood fromreading the following description of non-limiting embodiments, withreference to the attached drawings, wherein below:

FIG. 1 illustrates one example of a powered system having a controlsystem that uses one or more embodiments of subject matter describedherein;

FIG. 2 illustrates another example of a powered system having a controlsystem that uses one or more embodiments of subject matter describedherein;

FIG. 3 illustrates another example of a powered system having a controlsystem that uses one or more embodiments of subject matter describedherein;

FIG. 4 illustrates another example of a powered system having a controlsystem that uses one or more embodiments of subject matter describedherein;

FIG. 5 illustrates one embodiment of a communication system;

FIG. 6 schematically illustrates a communication network through whichdevices of the communication system may communicate data using a datadistribution service shown in FIG. 5; and

FIG. 7 illustrates a flowchart of one embodiment of a method forcontrolling a Quality of Service (QoS) of a data distribution service ina time sensitive network (TSN).

DETAILED DESCRIPTION

Certain embodiments of the present disclosure provide systems andmethods that apply quality of service (QoS) requirements of a datadistribution service to a time sensitive network (TSN) or time-triggeredEthernet (TTE) network in control systems of powered systems. Thesystems and methods map a configuration of QoS requirements of the datadistribution service to TSN/TTE in order to ensure communication ofcertain types of data among devices within a control system whileallowing other devices to communicate within the same network of thesame control system. A mapping between TSN/TTE network parameters andparameters of the data distribution service allows the TSN/TTE networkto provide the QoS required by the data distribution service. While thedescription herein focuses on TSN, one or more embodiments also areapplicable to TTE networks and various data distribution systems.

The systems and methods described herein address how TSN shouldinterpret and react to the QoS requirements of the data distributionservice. By mapping configuration parameters of the data distributionservice to the configuration parameters of TSN, a scheduler of TSN cancreate schedules that support QoS requirements of the data distributionservice for time-critical control applications.

A time-critical control application includes an operation of one or moredevices in a control system that relies on receipt of data in sufficienttime to allow the one or more devices to react based on the data andprovide an effective responsive action. As one example of atime-critical control application, a sensor onboard a vehicle (e.g., anautomobile, locomotive, etc.) detects the presence of objects outsidethe vehicle that pose a risk of collision with the vehicle. This sensorcommunicates data representative of one or more potential collisions toa control system of the vehicle. In response to receipt of this data,the control system may automatically apply brakes and/or reduce athrottle of the vehicle. If the data indicative of the collision is notreceived by the control system early enough to allow the control systemto examine the data, determine that the brakes should be applied and/orthe throttle should be reduced, and communicate appropriate signals tothe brake and/or throttle, then the control system may not be able tosafely apply the brakes and/or reduce the throttle.

The systems and methods described herein enable devices communicatingusing a variety of data distribution services (referred to herein aspublishers and subscribers) to communicate in real-time to thecorresponding talkers and listeners within the TSN standard to allowcommunication links to be dynamically allocated between or among thedevices when needed.

FIGS. 1 through 4 illustrate several examples of powered systems 100,200, 300, 400 having control systems that use one or more embodiments ofsubject matter described herein. The powered system 100 shown in FIG. 1is a locomotive, which has a control system that controls operations(e.g., movement and other actions) of the locomotive based on dataobtained by, generated by, and/or communicated among devices of thelocomotive and/or off-board the locomotive. The powered system 200 shownin FIG. 2 is an automobile, which has a control system 202 that controlsoperations (e.g., driver warnings, automated movement, or other actions)of the automobile based on data obtained by, generated by, and/orcommunicated among devices of the automobile and/or off-board theautomobile. The powered system 300 shown in FIG. 3 is a medical device,such as a magnetic resonance imaging (MRI) device. Alternatively, thepowered system 300 may represent several medical devices, such asmedical equipment within a surgical suite, emergency room, hospital, orthe like. The powered system 300 may include a control system 302 thatcontrols operations of the medical equipment or devices, communicatesinformation between or among the medical equipment or devices, etc., toallow for automated control of the equipment or devices, to provideinformation to operators of the equipment or devices, etc. The poweredsystem 400 shown in FIG. 4 is a hydraulic power plant, which has acontrol system that controls operations of the plant based on dataobtained by, generated by, and/or communicated among devices of theplant.

FIG. 5 illustrates one embodiment of a communication system 500. Thecommunication system 500 may be used by a control system 518 (“Control”in FIG. 5) to communicate data between or among devices of the controlsystem 518 and/or the powered system that is controlled by the controlsystem 518. The control system 518 may represent one or more of thecontrol systems 100, 200, 300, 400 shown in FIGS. 1 through 4. Thecontrol system 518 shown in FIG. 5 represents hardware circuitry thatincludes and/or is connected with one or more processors (e.g.,microprocessors, integrated circuits, field programmable gate arrays,etc.) that perform operations to control the powered system(s).

The communication system 500 communicates data between several devices,such as sensors 502, 504 that monitor, measure, record, etc. informationand communicate this information as sensor data 506. Another device thatcan communicate via the communication system 500 can include a humanmachine interface (HMI) or user interface (UI) (shown as “HMI/UI” inFIG. 5) 508 that receives output or status data 510 that is to bepresented to a user or operator of the communication system 500 orcontrol system 518 and that can communicate input data 512 received fromthe user or operator to one or more other devices of the control system.The HMI/UI 508 can represent a display device, touchscreen, laptop,tablet computer, mobile phone, speaker, haptic device, or other devicethat communicates or conveys information to a user or operator.

In one embodiment, at least one of the sensors 502, 504 may be a camerathat generates video or image data, an x-ray detector, an acousticpick-up device, a tachometer, a global positioning system receiver, awireless device that transmits a wireless signal and detects reflectionsof the wireless signal in order to generate image data representative ofbodies or objects behind walls, sides of cars, or other opaque bodies,or another device.

Another device that can communicate using the communication system 500includes one or more actuators 514, which represent devices, equipment,or machinery that move to perform one or more operations of the poweredsystem that is controlled by the control system 518. Examples ofactuators 514 include brakes, throttles, robotic devices, medicalimaging devices, lights, turbines, etc. The actuators 514 cancommunicate status data 516 of the actuators 514 to one or more otherdevices in the powered system via the communication system 500. Thestatus data 516 represent a position, state, health, or the like, of theactuator 514 sending the status data 516. The actuators 514 can receivecommand data 520 from one or more other devices of the powered system orcontrol system via the communication system 500. The command data 520represents instructions that direct the actuators 514 how and/or when tomove, operate, etc.

The control system 518 can communicate (e.g., receive, transmit, and/orbroadcast) a variety of data between or among the devices via thecommunication system 500. For example, the control system 518 cancommunicate the command data 520 to one or more of the devices and/orreceive data 522, such as status data 516 and/or sensor data 506, fromone or more of the devices. While devices are shown in FIG. 5 as sendingcertain data or receiving certain data, optionally, the devices may sendand/or receive other types of data. For example, the sensors 502, 504may receive data and/or send other types of data.

The communication system 500 communicates data between or among thedevices and/or control system 518 using a communication network 526 thatcommunicates data using a data distribution service 524. The network 526is shown in FIG. 5 as a time sensitive network, but alternatively may beanother type of network. The data distribution service 524 represents anobject management group (OMG) device-to-device middleware communicationstandard between the devices and the network. The data distributionservice 524 allows for communication between publishers and subscribers.The term publisher refers to devices 502, 504, 508, 514, 518 that senddata to other devices 502, 504, 508, 514, 518 and the term subscriberrefers to devices 502, 504, 508, 514, 518 that receive data from otherdevices 502, 504, 508, 514, 518. The data distribution service 524 isnetwork agnostic in that the data distribution service 524 can operateon a variety of networks, such as Ethernet networks as one example. Thedata distribution service 524 operates between the network through whichdata is communicated and the applications communicating the data (e.g.,the devices 502, 504, 508, 514, 518). The devices 502, 504, 508, 514,518 can publish and subscribe to data over a distributed area to permita wide variety of information to be shared among the devices 502, 504,508, 514, 518.

In one embodiment, the data distribution service 524 is used by thedevices 502, 504, 508, 514, 518 to communicate data 506, 510, 512, 516,520, 522 through the network 526, which may operate on an Ethernetnetwork of the powered system. The network 526may be at least partiallydefined by a set of standards developed by the Time-Sensitive NetworkingTask Group, and includes one or more of the IEEE 802.1 standards. Whilean Ethernet network may operate without TSN, such a network maycommunicate data frames or packets in a random or pseudo-random mannerthat does not ensure that the data is communicated within designatedtime periods or at designated times. As a result, some data may notreach devices connected via the non-TSN Ethernet network in sufficienttime for the devices to operate using the data. With respect to somecontrol systems, the late arrival of data can have disastrousconsequences, as described above. A TSN-based Ethernet network, however,can dictate when certain data communications occur to ensure thatcertain data frames or packets are communicated within designated timeperiods or at designated times. Data transmissions within a TSN-basedEthernet network can be based on a global time or time scale of thenetwork that is the same for the devices in or connected with thenetwork, with the times or time slots in which the devices communicatebeing scheduled for at least some of the devices.

The communication system 500 may use the network 526 to communicate databetween or among the devices 502, 504, 508, 514, 518 using the datadistribution service 524 in order to maintain QoS parameters 528 ofcertain devices 502, 504, 508, 514, 518. The QoS parameters 528 of thedevices 502, 504, 508, 514, 518 represent requirements for datacommunication between or among the devices 502, 504, 508, 514, 518, suchas upper limits on the amount of time or delay for communicating databetween or among the devices 502, 504, 508, 514, 518. The QoS parameters528 are determined for the data distribution service 524 and mapped(e.g., applied, or used to dictate how and/or when data is communicated,as described herein) to the network 526 in one embodiment.

A QoS parameter 528 can dictate a lower limit or minimum on datathroughput in communication between or among two or more devices 502,504, 508, 514, 518. A QoS parameter 528 can be used to ensure that datacommunicated with one or more devices 502, 504, 508, 514, 518, to one ormore devices 502, 504, 508, 514, 518, and/or between two or more devices502, 504, 508, 514, 518 is received in a timely manner (e.g., atdesignated times or within designated time periods). A QoS parameter 528can be defined by one or more other parameters. Examples of these otherparameters can include a deadline parameter, a latency parameter, and/ora transport priority parameter.

The deadline parameter dictates an upper limit or maximum on the amountof time available to send and/or receive data associated with aparticular topic. Data can be associated with a particular topic whenthe data is published by one or more designated devices (e.g., sensorsmeasuring a particular characteristic of the powered system, such asspeed, power output, etc.), then the data represents the particularcharacteristic (even if the data comes from different devices atdifferent times), and/or is directed to the same device (e.g., the sameactuator 514).

The latency parameter dictates an upper limit or maximum on a temporaldelay in delivering data to a subscribing device 502, 504, 508, 514, 518of the data. For example, the sensors 502, 504 may publish data 506representative of operations of the powered system, and the HMI/UI 508,actuator 514, and/or control system 518 may require receipt of thesensor data 506 within a designated period of time after the data 506 ispublished by the sensors 502, 504. With respect to a sensor 502 thatcommunicates a temperature of a motor or engine reaching or exceeding adesignated threshold indicative of a dangerous condition, the controlsystem 518 and/or actuator 514 may need to receive this temperaturewithin a designated period of time to allow the control system 518and/or actuator 514 to implement a responsive action, such as decreasinga speed of the engine or motor, shutting down the engine or motor, etc.

The transport priority parameter indicates relative priorities betweentwo or more of the devices 502, 504, 508, 514, 518 to the network. Somedevices 502, 504, 508, 514, 518 may have higher priority than otherdevices 502, 504, 508, 514, 518 to receive (or subscribe to) certainidentified types or sources of data. Similarly, some devices 502, 504,508, 514, 518 may have higher priority than other devices 502, 504, 508,514, 518 to send (or publish) certain identified types or sources ofdata. Subscribing devices 502, 504, 508, 514, 518 having higherpriorities than other devices 502, 504, 508, 514, 518 may receive thesame data via the network from a source of the data prior to thelower-priority devices 502, 504, 508, 514, 518. Publishing devices 502,504, 508, 514, 518 having higher priorities than other devices 502, 504,508, 514, 518 may send the data that is obtained or generated by thehigher-priority devices 502, 504, 508, 514, 518 into the network thanlower-priority devices 502, 504, 508, 514, 518.

The QoS parameters 528 of the devices 502, 504, 508, 514, 518 may bedefined by one or more, or a combination, of the deadline parameter,latency parameter, and/or transport priority parameter. The QoSparameters 528 are then used to determine data traffic schedules withinthe TSN using the data distribution service 524. Data traffic schedulescan dictate communication paths and times at which data is communicatedwithin the network.

FIG. 6 schematically illustrates a communication network 600 throughwhich the devices 502, 504, 508, 514, 518 may communicate the data 506,510, 512, 516, 520, 522 using the data distribution service 524. Thenetwork 600 may be configured to operate as a TSN. The network 600includes the devices 502, 504, 508, 514, 518 communicatively coupledwith each other by communication links 604 and communication nodes 602(e.g., nodes 602A-I). The nodes 602 can represent routers, switches,repeaters, or other devices capable of receiving data frames or packetsand sending the data frames or packets to another node 602. In oneembodiment, the devices 502, 504, 508, 514, 518 also can be nodes 602 inthe network 600. The communication links 604 represent wired connectionsbetween the nodes 602, such as wires, buses, cables, or other conductivepathways between the nodes 602. Optionally, one or more of thecommunication links 604 includes a wireless connection or networkbetween nodes 602.

The data 506, 510, 512, 516, 520, 522 can be communicated in the network600 as data frames or data packets. The data frames or packets can bepublished by a device 502, 504, 508, 514, 518 and received by anotherdevice 502, 504, 508, 514, 518 by the frames or packets hopping, ormoving from node 602 to node 602 along the links 604 within the network600. For example, one or more of the data frames or packets of the data506 published by the sensor 504 can be published to the network 600 andsubscribed to by the control system 518. The data frames or packets mayhop from the sensor 504 to the control system 518 by being communicatedfrom the sensor 504 to the node 602A, then the node 602B, and then thecontrol system 518, to the node 602C then the control system 518, to thenode 602D, then the node 602C, and then the control system 518, etc.Different frames or packets may be communicated along different nodes602 and paths 604 from the publishing device to the subscribing device.

The control system 518 can determine the QoS parameters 528 for thevarious devices 502, 504, 508, 514, 518, determine which devices 502,504, 508, 514, 518 and nodes 602 can communicate with each other in thenetwork 600, determine feasible schedules for communication of data fromand/or to the devices 502, 504, 508, 514, 518 within the network 600,and determines frame communication schedules for the data frames to becommunicated within the network 600 in order to satisfy, achieve, oravoid violating the QoS parameters 528 of the various devices 502, 504,508, 514, 518.

The devices 502, 504, 508, 514, 518 can communicate the data (e.g.,publish and/or subscribe to the data) according to the schedulesdictated by the control system 518 in order to achieve or maintain theQoS parameters 528 of the devices 502, 504, 508, 514, 518. Other dataand/or other devices may communicate with or among each other using thesame network, but without a designated schedule and/or without beingsubject to QoS parameters 528. For example, the sensor 502, actuator514, and control system 518 may have QoS parameters 528 and the controlsystem 518 can dictate schedules for when the sensor 502, actuator 514,and control system 518 publish and/or receive data via the network 524.The network 526 can be an Ethernet based network that communicatesdifferent categories or groups or types of data according to differentpriorities. For example, the network 526 can communicate time sensitivedata according to the schedule or schedules determined by the controlsystem 518 in order to achieve or maintain the QoS parameters 528 ofcertain devices 502, 504, 508, 514, 518. The network 526 can communicateother data between or among the same or other devices 502, 504, 508,514, 518 as “best effort” traffic or rate constrained traffic. Besteffort traffic includes the communication of data between or among atleast some of the devices 502, 504, 508, 514, 518 that is not subject toor required to meet the QoS parameters 528 of the devices 502, 504, 508,514, 518. This data may be communicated at a higher priority than thedata communicated in rate constrained traffic, but at a lower prioritythan the data communicated according to the schedules dictated by thecontrol system 518 in order to meet or achieve the QoS parameters 528(also referred to herein as time sensitive traffic). The rateconstrained traffic can include data that is communicated between oramong the devices 502, 504, 508, 514, 518, but that is communicated at alower priority than the time sensitive data and the best effort traffic.The time sensitive data, the best effort traffic, and the rateconstrained traffic are communicated within or through the same network526, but with different priorities. The time sensitive data iscommunicated at designated times or within designated time periods,while the best effort traffic and rate constrained traffic is attemptedto be communicated in a timely manner, but that may be delayed in orderto ensure that the time sensitive data is communicated to achieve ormaintain the QoS parameters 528.

FIG. 7 illustrates a flowchart of one embodiment of a method 700 forcontrolling the QoS of the data distribution service in a TSN. Themethod 700 may be used by the control system 518 in order to determineschedules for communicating data within the network 600 in order tosatisfy the QoS parameters 528 of various devices 502, 504, 508, 514,518. In one embodiment, the method 700 can represent the algorithm usedto direct the operations of the control system 518 in communicating datain the network 600 and/or can be used to construct a softwareapplication for directing the operations of the control system 518 incommunicating data in the network 600.

At 702, QoS parameters 528 for the devices 502, 504, 508, 514, 518 aredetermined. These parameters may be input by an operator or user of thepowered system or control system 518, or may be communicated to thecontrol system 518 by the devices 502, 504, 508, 514, 518. At 704,available communication pathways in the network 600 are determined.These communication pathways include permutations of potential links 604and nodes 602 that may be used to communicate data between the devices502, 504, 508, 514, 518, to publish data from the devices 502, 504, 508,514, 518, and/or for the devices 502, 504, 508, 514, 518 to receivedata. For example, one potential communication pathway for the sensor502 to publish data 506 to the control system 518 may include the node602H (and associated links 604 connecting the sensor 502 to the controlsystem 518 via the node 602H), another potential communication pathwayfor the sensor 502 to publish data 506 to the control system 518 mayinclude the node 602G (and associated links 604 connecting the sensor502 to the control system 518 via the node 602G), another potentialcommunication pathway for the sensor 502 to publish data 506 to thecontrol system 518 may include the node 602F (and associated links 604connecting the sensor 502 to the control system 518 via the node 602F),another potential communication pathway for the sensor 502 to publishdata 506 to the control system 518 may include the node 602H (andassociated links 604 connecting the sensor 502 to the control system 518via the node 602H), another potential communication pathway for thesensor 502 to publish data 506 to the control system 518 may include acombination of two or more of the nodes 602 (and associated links 604connecting the sensor 502 to the control system 518 via the nodes 602),etc.

At 706, feasible communication schedules are determined. A feasiblecommunication schedule dictates communication times and communicationpathways used to communicate data between devices. For example, not allcommunication pathways may be used to communicate data between devices.Some nodes 602 may be limited with respect to how many data frames orpackets can be communicated through the node 602 at the same time. Thiscan limit how many devices can communicate data through the same node602 at a time. Additionally, some of the communication links 604 may belimited with respect to how many data frames or packets can becommunicated along the link 604 at the same time. This can limit howmany devices can communicate data along or in the same link 604 at atime.

In one embodiment, the control system 518 can identify all permutationsof potential combinations of nodes 602 and pathways 604 that allowvarious combinations of publishing and subscribing devices tocommunicate data with each other. These permutations may be referred toas a corpus of communication pathways. From this corpus, the controlsystem 518 can eliminate one or more pathways that are not available orfeasible. Pathways may not be feasible or available when the pathwaysprevent or interfere with the communication of data through the samenode 602 or link 604 at the same time. The unavailable or infeasiblepathways may be eliminated from the corpus to identify a set ofavailable communication pathways.

At 706, feasible communication schedules for the devices are determined.The feasible communication schedules represent the times or time periodsin which data is communicated between devices and the communicationpathways over which the data is communicated. A communication schedulemay be feasible when the communication pathway between the devices(e.g., the publishing and subscribing pathways) is available and whenthe time or time period of the communication satisfies or avoidsviolating the QoS parameter(s) 528 of the publishing and/or subscribingdevices. For example, if a communication schedule directs control data520 to be communicated from the control system 518 to the actuator 514along a communication pathway that is available and at a time or timesthat occur frequently enough to ensure that the QoS parameter 528 of theactuator 514 is satisfied or not violated, then the schedule isfeasible. If, however, the communication schedule directs the controldata 520 to be communicated from the control system 518 to the actuator514 along a pathway that is not available or at a time or times that aretoo late or infrequent to satisfy the QoS parameter 528 of the actuator514, then the communication schedule is not feasible.

At 708, communication schedules are designated as selected schedules. Asset of the feasible communication schedules determined at 706 may beselected for inclusion in the selected schedules. The selected schedulesare those that are used to communicate data in the network 600. Forexample, several feasible communication schedules may be identified, buta subset of these schedules may be selected for use in the network 600.The control system 518 can select those feasible communication schedulesthat satisfy the QoS parameters 528 of the devices. In one embodiment,the control system 518 selects the feasible communication schedules thatboth satisfy the QoS parameters 528 of the devices while also allowingfor devices that are not subject to QoS parameters 528 to communicatedata in the network 600. For example, one of the sensors 502 may be acamera that provides surveillance video to the HMI/UI 508, which may notbe a critical operation of the powered system, while another sensor 504may measure air pressure in air brakes of the powered system andcommunicate this to the control system 518, which may be a criticaloperation of the powered system to ensure that the powered system canapply the air brakes when needed. The control system 518 may select thefeasible communication schedules for use by the devices that cause theQoS parameters 528 of the sensor 504 and the control system 518 to besatisfied, while also allowing the sensor 502 to communicate the videoto the HMUUI 508. The schedule for the sensor 504 and control system 518may have a higher priority to ensure that this data is communicated tothe control system 518, while leaving enough bandwidth to permit thesensor 502 to communicate the video data to the HMI/UI 508 whenpossible.

In one embodiment, the selected schedules used for communicating data inthe network 600 are communicated to the devices and the devices sendand/or receive data (as appropriate) within the network 600 according tothe selected schedules. This ensures that the QoS parameters 528 of thedevices are satisfied, while permitting other data to be communicated inthe same network 600 and avoiding the added cost and complexity ofdedicated wires or networks for the devices. The selected schedules maybe updated as needed. For example, if one or more devices are added tothe powered system, the control system 518 may evaluate feasibleschedules for the added devices in light of the currently used selectedschedules and select feasible schedules for the added devices. This canensure that the QoS parameters 528 of the added devices are met whileavoiding having to take down the entire powered system and re-evaluatingthe schedules of all devices.

It is to be understood that the above description is intended to beillustrative, and not restrictive. For example, the above-describedembodiments (and/or examples thereof) may be used in combination witheach other. In addition, many modifications may be made to adapt aparticular situation or material to the teachings of the inventivesubject matter without departing from its scope. While the dimensionsand types of materials described herein are intended to define theparameters of the inventive subject matter, they are by no meanslimiting and are exemplary embodiments. Many other embodiments will beapparent to one of ordinary skill in the art upon reviewing the abovedescription. The scope of the inventive subject matter should,therefore, be determined with reference to the appended claims, alongwith the full scope of equivalents to which such claims are entitled. Inthe appended claims, the terms “including” and “in which” are used asthe plain-English equivalents of the respective terms “comprising” and“wherein.” Moreover, in the following claims, the terms “first,”“second,” and “third,” etc. are used merely as labels, and are notintended to impose numerical requirements on their objects. Further, thelimitations of the following claims are not written inmeans-plus-function format and are not intended to be interpreted basedon 35 U.S.C. §112(f), unless and until such claim limitations expresslyuse the phrase “means for” followed by a statement of function void offurther structure.

This written description uses examples to disclose several embodimentsof the inventive subject matter and also to enable a person of ordinaryskill in the art to practice the embodiments of the inventive subjectmatter, including making and using any devices or systems and performingany incorporated methods. The patentable scope of the inventive subjectmatter is defined by the claims, and may include other examples thatoccur to those of ordinary skill in the art. Such other examples areintended to be within the scope of the claims if they have structuralelements that do not differ from the literal language of the claims, orif they include equivalent structural elements with insubstantialdifferences from the literal languages of the claims.

The foregoing description of certain embodiments of the inventivesubject matter will be better understood when read in conjunction withthe appended drawings. To the extent that the figures illustratediagrams of the functional blocks of various embodiments, the functionalblocks are not necessarily indicative of the division between hardwarecircuitry. Thus, for example, one or more of the functional blocks (forexample, processors or memories) may be implemented in a single piece ofhardware (for example, a general purpose signal processor,microcontroller, random access memory, hard disk, and the like).Similarly, the programs may be stand-alone programs, may be incorporatedas subroutines in an operating system, may be functions in an installedsoftware package, and the like. The various embodiments are not limitedto the arrangements and instrumentality shown in the drawings.

As used herein, an element or step recited in the singular and proceededwith the word “a” or “an” should be understood as not excluding pluralof said elements or steps, unless such exclusion is explicitly stated.Furthermore, references to “one embodiment” of the inventive subjectmatter are not intended to be interpreted as excluding the existence ofadditional embodiments that also incorporate the recited features.Moreover, unless explicitly stated to the contrary, embodiments“comprising,” “including,” or “having” an element or a plurality ofelements having a particular property may include additional suchelements not having that property.

What is claimed is:
 1. A control system comprising: one or moreprocessors configured to determine quality of service (QoS) parametersof devices communicating data with each other in an Ethernet networkconfigured as a time sensitive network (TSN), the one or more processorsalso configured to determine available communication pathways in the TSNthrough which the devices are able to communicate the data, the one ormore processors also configured to select one or more of the availablecommunication pathways and to designate communication times at which thedata is communicated between the devices in order to satisfy the QoSparameters of the devices.
 2. The control system of claim 1, wherein theQoS parameters dictate one or more lower limits on data throughput incommunication between the devices.
 3. The control system of claim 1,wherein the QoS parameters include a deadline parameter that dictates anupper limit on an amount of time available to communicate the databetween the devices.
 4. The control system of claim 1, wherein the QoSparameters include a transport priority parameter that dictates relativecommunication priorities among the devices.
 5. The control system ofclaim 1, wherein the network is formed from plural communication linksand nodes that interconnect the devices, and wherein the one or moreprocessors are configured to select the most efficient pathway throughthe network based on limitations of how many of the devices cancommunicate the data in one or more of the links or through one or moreof the nodes at a time.
 6. The control system of claim 1, wherein theone or more processors are configured to determine the QoS parameters ofthe devices communicating the data for controlling operations of apowered system.
 7. A method comprising: determining quality of service(QoS) parameters of devices communicating data with each other in anEthernet network configured as a time sensitive network (TSN);determining available communication pathways in the TSN through whichthe devices are able to communicate the data; and selecting one or moreof the available communication pathways and to designate communicationtimes at which the data is communicated between the devices in order tosatisfy the QoS parameters of the devices.
 8. The method of claim 7,wherein the QoS parameters include a deadline parameter that dictates anupper limit on an amount of time available to communicate the databetween the devices.
 9. The method of claim 7, wherein the QoSparameters include a latency parameter that dictates an upper limit on adelay in communicating the data to at least one of the devices.
 10. Themethod of claim 7, wherein the QoS parameters include a transportpriority parameter that dictates relative communication prioritiesbetween the devices.
 11. The method of claim 7, wherein the network isformed from plural communication links and nodes that interconnect thedevices, and further comprising select the most efficient pathwaythrough the network based on limitations of how many of the devices cancommunicate the data in one or more of the links or through one or moreof the nodes at a time.
 12. The method of claim 7, further comprisingcommunicating the data for controlling operations of a powered systemusing one or more of the available communication pathways and thecommunication times that are designated.
 13. A control systemcomprising: one or more processors configured to determine quality ofservice (QoS) parameters of devices communicating data with each otherin a communication network, the one or more processors also configuredto determine available communication pathways in the network throughwhich the devices are able to communicate the data, the one or moreprocessors also configured to select one or more of the availablecommunication pathways and to designate communication times at which thedata is communicated between the devices in order to satisfy the QoSparameters of the devices.
 14. The control system of claim 13, whereinthe communication network is configured as a time sensitive network(TSN).
 15. The control system of claim 13, wherein the QoS parametersinclude a deadline parameter that dictates an upper limit on an amountof time available to communicate the data between the devices.
 16. Thecontrol system of claim 13, wherein the QoS parameters include a latencyparameter that dictates an upper limit on a delay in communicating thedata to at least one of the devices.
 17. The control system of claim 13,wherein the QoS parameters include a transport priority parameter thatdictates relative communication priorities between the devices.
 18. Thecontrol system of claim 13, wherein the QoS parameters for the devicesinclude a combination of a deadline parameter, a latency parameter, anda transport priority parameter.
 19. The control system of claim 13,wherein the network is formed from plural communication links and nodesthat interconnect the devices, and wherein the one or more processorsare configured to eliminate one or more combinations of the links andthe nodes from the available communication pathways based on limitationsof how many of the devices can communicate the data in one or more ofthe links or through one or more of the nodes at a time.
 20. The controlsystem of claim 13, wherein the one or more processors are configured todetermine the QoS parameters of the devices communicating the data forcontrolling operations of a powered system.